import java.io.File;
import java.util.Properties;

import org.apache.commons.configuration.ConfigurationException;
import org.apache.commons.configuration.PropertiesConfiguration;
import org.apache.commons.configuration.reloading.FileChangedReloadingStrategy;

/**
 * 系统配置
 * 
 * @author libinlong
 */
public class Config {

	private static PropertiesConfiguration config = null;
	
	static {
		try {
			
//			config = new PropertiesConfiguration(new File("//data//server//config//config.properties"));
			 //本地使用项目相对路径读取配置文件
			config = new PropertiesConfiguration(new File("E:\\MyUtil\\src\\main\\resources\\log4j.properties"));
			config.load("E:\\MyUtil\\src\\main\\resources\\log4j.properties");
			
			
		} catch (ConfigurationException e) {
			e.printStackTrace();
		}
		config.setReloadingStrategy(new FileChangedReloadingStrategy());
	}
	

	/**
	 * 获取字符型属性（默认值为空字符）
	 * @param props
	 * @param key
	 * @return
	 */
	public static String getString(String key){
		return config.getString(key);
	}
	
	/**
	 * 获取字符型属性（可指定默认值为）
	 * @param props
	 * @param key
	 * @param defauleValue
	 * @return
	 */
	public static String getString(String key, String defaultValue){
		return config.getString(key, defaultValue);
	}
	
	/**
	 * 获取数值型属性
	 * @param props
	 * @param key
	 * @return
	 */
	public static int getInt(String key){
		return config.getInt(key);
	}
	
	/**
	 * 获取数值型属性（可指定默认值为）
	 * @param props
	 * @param key
	 * @param defauleValue
	 * @return
	 */
	public static int getInt(String key, int defaultValue){
		return config.getInt(key, defaultValue);
	}
	
	/**
	 * 获取布尔型属性
	 * @param props
	 * @param key
	 * @return
	 */
	public static boolean getBoolean(String key){
		return config.getBoolean(key, false);
	}
	
	/**
	 * 获取布尔型属性（可指定默认值为）
	 * @param props
	 * @param key
	 * @param defauleValue
	 * @return
	 */
	public static boolean getBoolean(Properties props, String key, boolean defauleValue){
		return config.getBoolean(key, defauleValue);
	}
}
